package com.gdust.hzx.user;

import com.gdust.spzx.common.anno.EnableUserLoginAuthInterceptor;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;

/**
 * ClassName: UserApplication
 * Package: com.gdust.hzx.user
 * Description: 用户服务的启动类，提供应用程序的主入口。
 *
 * 注解说明：
 * - `@SpringBootApplication`：标注为 Spring Boot 应用的主配置类，包含了`@Configuration`、`@EnableAutoConfiguration`和`@ComponentScan`功能。
 * - `@ComponentScan(basePackages = {"com.gdust.hzx"})`：
 *   - 指定扫描的基础包路径 `com.gdust.hzx`，从该路径及其子路径下查找并注册 Spring Bean。
 *   - 适用于项目模块化时需要统一管理 Bean 的情况。
 * - `@EnableUserLoginAuthInterceptor`（已注释掉）：
 *   - 如果启用，可能会注册一个用户登录认证拦截器，用于全局拦截用户请求并进行权限校验。
 *   - 当前为注释状态，可能在后续需要启用时用于增强安全性。
 *
 * 功能描述：
 * - 作为用户服务的启动类，加载相关配置，初始化 Spring 应用上下文并启动内置服务器。
 *
 * @Author syun
 * @Create 2024/12/26 19:16
 * @Version 1.0
 */
@SpringBootApplication// 启动注解，标识这是一个 Spring Boot 应用
@ComponentScan(basePackages = {"com.gdust.hzx"})// 扫描指定基础包路径及其子包下的组件
@EnableUserLoginAuthInterceptor// 启用用户登录认证拦截器配置类
public class UserApplication {

    public static void main(String[] args) {
        // 启动 Spring Boot 应用
        SpringApplication.run(UserApplication.class, args);
    }

}
